Conventional systems and methods for the combination of binary error correcting codes (such as turbo codes) and multi-level signal sets (such as QAM) typically operate as depicted in FIG. 1. Input data is encoded, for example using Turbo Encoding. The encoded output is interleaved and mapped m bits at a time to a QAM constellation using a QAM constellation mapping which is typically a Gray mapping. The result is transmitted over a channel. At the receiver, the QAM de-mapping is performed, followed by turbo decoding.
In these schemes, Turbo decoding is achieved in two stages. First, the probability values corresponding to the bits are extracted by adding up the probability of the corresponding constellation points. Then, these bit probability values are passed to a conventional Turbo-decoder for iterative decoding. The complexity of these methods grows with the size of the constellation due to the step required in extracting the probability values. In addition, the extra interleaving stage required between the binary encoder and the constellation (to reduce the dependency between the adjacent bits mapped to the same constellation) adds to the overall system complexity. It is well known that the coding gain of these schemes drops as the spectral efficiency increases.
Disadvantageously, noise in the QAM may result in multiple bit errors which may not be correctable. For example, in a constellation with 1024 points, capable of representing ten bits per symbol, an error in the mapping may result in up to all ten bits being in error. Most current systems map similar bit sequences to constellation points which are close to each other to mitigate this problem somewhat. Gray Mapping is an example of this.
Notwithstanding Gray mapping, the error rates achieved with such systems are still significantly less than the limit said to be theoretically achievable by Shannon's coding theorem. As QAM size increases, the coding loss becomes significant.